package com.cloud.wms.ui.in.contract;


import com.cloud.core.base.BasePresenter;
import com.cloud.core.base.BaseView;
import com.cloud.wms.ui.in.entity.InCommodityEntity;
import com.cloud.wms.ui.in.entity.InMarkEntity;
import com.cloud.wms.ui.in.entity.InOrderEntity;
import com.cloud.wms.ui.main.entity.TaskEntity;

import java.util.ArrayList;
import java.util.List;

/**
 * @Author:Chen
 * @Date: 2021-01-14 15:49
 * @Description:
 */
public interface InShelfContract {
    interface View extends BaseView {
    }

    interface Presenter extends BasePresenter<View> {
        void loadInOrderList(String inCode, int page);

        void receiveShelfTask(InOrderEntity inOrderEntity, String taskCode);

        void loadInMarkCommodityList(String InID, boolean isComplete);

        void loadInCommodityList(String InID, boolean isComplete);

        void checkMarkCode(String InID, String code);

        void checkCommodityCode(String InID, String code, int stockType);

        void checkPosCode(String code, int stockType);

        void submitMarkShelf(
                TaskEntity taskEntity,
                InOrderEntity inOrder,
                String posCode,
                List<InMarkEntity> markList, String beginTime);

        void submitSingleAndBatchShelf(
                TaskEntity taskEntity,
                InOrderEntity inOrder,
                List<InCommodityEntity> commodityList, String beginTime);

    }
}
